package juego.util;

public class Coordenadas2D {
	private double x, y, modulo;
	private float alfa;
	
	public Coordenadas2D() {
		x=y=modulo=0.0;
		alfa=0f;
	}
	
	public double getX() {
		return x;
	}

	public void setX(double x) {
		this.x = x;
		aPolares();
	}

	public double getY() {
		return y;
	}

	public void setY(double y) {
		this.y = y;
		aPolares();
	}

	public double getModulo() {
		return modulo;
	}

	public void setModulo(double modulo) {
		this.modulo = modulo;
		aCartesianas();
	}

	public float getAlfa() {
		return alfa;
	}

	public void setAlfa(float alfa) {
		this.alfa = alfa;
		aCartesianas();
	}

	public Coordenadas2D(double x, double y) {
		this.x=x;
		this.y=y;
		aPolares();
	}
	
	public Coordenadas2D(float alfa, double modulo) {
		this.alfa=alfa;
		this.modulo=modulo;
		aCartesianas();
	}
	
	public void aPolares() {
		modulo=Math.sqrt(x*x+y*y);
		alfa=(float)Math.atan2(y, x);
		
	}
	
	public void aCartesianas() {
		x=Math.cos(alfa)*modulo;
		y=Math.sin(alfa)*modulo;
	}
	
	public String toString() {
	
		return "X: "+x+"\nY: "+y+"\nAlfa: "+alfa+"\nModulo: "+modulo;
	}
	
}
